/***************************************************************************
 *            menu.h
 *
 *  Thu Oct  9 08:29:15 2008
 *  Copyright  2008  Tiago Falcao
 *  <developer@tiagofalcao.com>
 ****************************************************************************/

/*
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 * 
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Library General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor Boston, MA 02110-1301,  USA
 */
 
#ifndef MENU_H
#define MENU_H

#include "directory.h"
#include "SOIL.h"
#include "index.h"


#define MENU_QUIT 1
#define MENU_DRAW_GLUT_CUBE 20
#define MENU_DRAW_GLUT_SPHERE 21
#define MENU_DRAW_GLUT_TEAPOT 22
#define MENU_COLOR_WHITE 30
#define MENU_COLOR_RED 31
#define MENU_COLOR_GREEN 32
#define MENU_COLOR_BLUE 33
#define MENU_COLOR_GRAY 34
#define MENU_OBJ_SELECT 40
#define MENU_OBJ_SELECT_PREV 41
#define MENU_OBJ_UNSELECT 42
#define MENU_OBJ_DELETE 43

int menu_screen;
int menu_object;

index_string *menu_objs_wavefront;
index_string *menu_textures;

void menu_create();

void menu_delete();

void menu_set(int menu);

int menu_screen_create();
	 
void menu_screen_listener(int value);

int menu_draw_create();

int menu_draw_obj_create();

void menu_draw_obj_listener(int value);

int menu_draw_glut_create();

void menu_draw_glut_listener(int value);

int menu_object_create();

void menu_object_listener(int value);

int menu_color_create();

void menu_color_listener(int value);

int menu_texture_create();

void menu_texture_listener(int value);

int menu_mode_create();

void menu_mode_listener(int value);

#endif /* MENU_H */

